home *** CD-ROM | disk | FTP | other *** search
- 10 REM*****************************
- 20 REM* *
- 30 REM* WINDOWS DEMONSTRATION *
- 40 REM* *
- 50 REM* ERIC RANDALL 1988 *
- 60 REM* *
- 70 REM*****************************
- 80 REM
- 90 REM INITIALISATION
- 100 REM
- 105 POKE53280,14:POKE646,14:POKE53281,6:PRINT"[147] LOADING: MACHINE CODE[154]"
- 110 IFPEEK(49152)<>72THENLOAD"WINDOWS MC",8,1
- 120 POKE52,100:POKE56,100
- 130 INIT=50176:SET=50179:PULL=50182:BACK=50185:DOWN=50188:UP=50191:LEFT=50194
- 140 RIGHT=50197
- 150 POKE53265,PEEK(53265)AND239
- 160 SYSINIT:SYSSET,1,3,5,19,30:SYSSET,2,2,2,14,30:SYSSET,4,5,8,8,23
- 170 SYSPULL,1
- 180 PRINT"[147] INSTRUCTIONS[146]":PRINT"INITIALISE SYSTEM - SYS50176
- 190 [153]"DEFINE WINDOW - SYS50179,A,B,C,D,E WHERE:":[153]" A=WINDOW NUMBER (1 TO 4)
- 200 PRINT" B=START LINE C=START ROW":PRINT" D=NUMBER OF LINES
- 210 [153]" E=NUMBER OF ROWS":[153]"PULL DOWN WINDOW - SYS50182,A WHERE A=WINDOW NUMBER
- 220 PRINT"PUSH BACK CURRENT WINDOW - SYS50185"
- 230 PRINT"PRESS A KEY":SYSBACK
- 240 SYSPULL,4:PRINT"[147]TO DRAG WINDOWS :-
- 250 [153]" DOWN - SYS50188 F3WAIT":[153]" UP - SYS50191 F4WAIT"
- 260 [153]" LEFT - SYS50194 F6WAIT":[153]" RIGHT - SYS50197 F5WAIT"
- 270 [158]BACK:[151]53265,[194](53265)[170]16
- 280 [143]
- 290 [143] MAIN MENU
- 300 [143]
- 310 [153]"LOAD WINDOWS DEMONSTRATION WAIT"
- 320 [153]" 1WAIT - INSTRUCTIONS
- 330 PRINT" 2[146] - DISK DIRECTORY LISTING
- 340 [153]" 3WAIT - DEFINE YOUR OWN WINDOW
- 350 PRINT" 4[146] - PULL DOWN A WINDOW
- 360 [153]" 5WAIT - EXIT
- 370 PRINT"AFTER EACH EXERCISE, PRESS F1 TO EXIT FROM A WINDOW
- 380 [153]" SELECT OPTIONWAIT
- 390 GETA$:IFA$<"1"ORA$>"5"THEN390
- 400 ONVAL(A$)GOTO410,490,560,660,480
- 410 REM
- 420 REM PULL INSTRUCTION WINDOW
- 430 REM
- 440 SYSPULL,1:GOSUB740
- 450 SYSPULL,4:GOSUB740
- 460 SYSBACK:SYSBACK
- 470 GOTO390
- 480 END
- 490 REM
- 500 REM DISPLAY DIRECTORY
- 510 REM
- 520 SYSPULL,2
- 530 PRINT"[147] DISK LISTING[146]":PRINT"INSERT DISK AND PRESS A KEY"
- 540 GETA$:IFA$=""THEN540
- 550 GOSUB850:GOSUB740:SYSBACK:GOTO390
- 560 REM
- 570 REM DEFINE A WINDOW
- 580 REM
- 590 SYSPULL,1:PRINT"[147] DEFINE WINDOW[146]":PRINT"YOUR WINDOW WILL BE NUMBER 3
- 600 A[178]3:[153]" START LINE";:[133]B:[153]"START ROW";:[133]C
- 610 [153]"NUMBER OF LINES";:[133]D:[153]"NUMBER OF ROWS";:[133]E
- 620 [158]SET,A,B,C,D,E:[158]PULL,A
- 630 [153]"LOADTHIS IS YOUR WINDOW. USE THE CURSER AND HOME CONTROLS TO SET UP";
- 640 [153]"THE DISPLAY IN THIS WINDOW THEN PRESS RETURN
- 650 INPUTA$:SYSBACK:SYSBACK:GOTO390
- 660 REM
- 670 REM PULL DOWN A WINDOW
- 680 REM
- 690 SYSPULL,2:PRINT"[147] PULL DOWN A WINDOW[146]
- 700 [153]"WHICH WINDOW (1, 3 OR 4)":[133]A
- 705 [139]A[179]1[176]A[177]4[176]A[178]2[167]700
- 710 [158]PULL,A
- 720 [141]740
- 730 [158]BACK:[158]BACK:[137]390
- 740 [143]
- 750 [143] CHECK WHICH KEY PRESSED
- 760 [143] AND MOVE WINDOW
- 770 [143]
- 780 [161]A$:[139]A$[178]""[167]780
- 790 A[178][198](A$)
- 800 [139]A[178]138[167][158]UP:[137]740
- 810 [139]A[178]134[167][158]DOWN:[137]740
- 820 [139]A[178]139[167][158]LEFT:[137]740
- 830 [139]A[178]135[167][158]RIGHT:[137]740
- 840 [142]
- 850 [143]
- 860 [143] PRINT DISK DIRECTORY
- 870 [143]
- 880 [159]2,8,15:Z[178]0:P[178]1:[152]2,"I
- 890 OPEN1,8,0,"$0"
- 900 GET#1,A$,B$
- 910 GET#1,A$,B$
- 920 GET#1,A$,B$
- 930 C=0
- 940 IF A$<>"" THEN C=ASC(A$)
- 950 IF B$<>"" THEN C=C+ASC(B$)*256
- 960 D=3-LEN(STR$(C)):D=E
- 970 PRINT""MID$(STR$(C),2);TAB(3+E);"[146]";
- 980 FORJ=0TOD:PRINT" ";:NEXT
- 990 GET#1,B$:IF ST<>0 THEN 1090
- 1000 IF B$<>CHR$(34) THEN 990
- 1010 GET#1,B$:IF B$<>CHR$(34)THEN PRINTB$;:GOTO1010
- 1020 GET#1,B$:IF B$=CHR$(32) THEN 1020
- 1030 PRINT TAB(21+E);:C$=""
- 1040 C$=C$+B$:GET#1,B$:IF B$<>"" THEN 1040
- 1050 PRINT""LEFT$(C$,3)
- 1060 IFZ=0THENPRINT:Z=Z+1
- 1070 P=P+1:IFP=10THEN1110
- 1080 IF ST=0 THEN 910
- 1090 PRINT" BLOCKS FREE"
- 1100 CLOSE1:CLOSE2:RETURN
- 1110 PRINT"PRESS A KEY[146]"
- 1120 GETA$:IFA$=""THEN1120
- 1130 P=0:GOTO1080
-